package com.STS.ELearning.DAO
{
	
	import com.STS.ELearning.DAO.BaseDao;
	import com.STS.ELearning.VO.WebGecmisiVO;
	
	import flash.data.SQLConnection;
	import flash.data.SQLStatement;
	import flash.errors.SQLError;
	import flash.events.SQLErrorEvent;
	import flash.events.SQLEvent;
	
	import mx.binding.utils.BindingUtils;
	import mx.collections.ArrayCollection;
	import mx.controls.Alert;
	
	public class WebGecmisi extends BaseDao
	{
	
		public function WebGecmisi( lock: SingletonLock) {
			super(TABLE_NAME);
		}
		
		private static var instance:WebGecmisi;
		private static const TABLE_NAME:String="WebGecmisi";
		public static function getInstance():WebGecmisi {
			if( instance == null )
				instance = new WebGecmisi( new SingletonLock );
			return instance;
		}
		
	
		
		
		public override function getTableContent(order:String=null, where:String=null, whereParams:Array=null):Array{
		
			var data:Array=super.getTableContent(order,where,whereParams);
			var arrlist:Array=new Array();
			if(data!=null)
				for each(var item:Object in data)
			{
				arrlist.push( new WebGecmisiVO(item));
			}
			return arrlist;
		}
			
		public function updateRow( rowItem:WebGecmisiVO):Boolean {
			
			var text:String = 'UPDATE main.'+TABLE_NAME+' SET  url = @url, ilkTarih = @ilkTarih, sonTarih = @sonTarih, idKullanici = @idKullanici,toplamBoyut=@toplamBoyut,indirilenBoyut=@indirilenBoyut,indirmeKonumu=@indirmeKonumu WHERE id = @id;';
			var params:Array = [ {name:"id", value:rowItem.id}, {name:"url", value:rowItem.url}, {name:"ilkTarih", value:rowItem.ilkTarih}, {name:"sonTarih", value:rowItem.sonTarih}, {name:"idKullanici", value:rowItem.idKullanici}
				,{name:"toplamBoyut", value:rowItem.toplamBoyut},{name:"indirilenBoyut", value:rowItem.indirilenBoyut},{name:"indirmeKonumu", value:rowItem.indirmeKonumu}];
			return super.executeSingleResult(text,params);
		}
		
		public function insertRow( rowItem:WebGecmisiVO):Boolean {
			var text:String = 'INSERT INTO main.'+TABLE_NAME+'(id, url, ilkTarih, sonTarih, idKullanici,toplamBoyut,indirilenBoyut,indirmeKonumu ) VALUES ( '+getId()+',@url,@ilkTarih,@sonTarih,@idKullanici,@toplamBoyut,@indirilenBoyut,@indirmeKonumu );';
			var params:Array = [  {name:"url", value:rowItem.url}, {name:"ilkTarih", value:rowItem.ilkTarih}, {name:"sonTarih", value:rowItem.sonTarih}, {name:"idKullanici", value:rowItem.idKullanici} 
			,{name:"toplamBoyut", value:rowItem.toplamBoyut},{name:"indirilenBoyut", value:rowItem.indirilenBoyut},{name:"indirmeKonumu", value:rowItem.indirmeKonumu}];
			
			var ret:Boolean= super.executeSingleResult(text,params,rowItem,"id");
			return ret;
		}
		
		public function deleteRow( rowItem:WebGecmisiVO ):Boolean {
			var text:String = 'DELETE FROM main.'+TABLE_NAME+' WHERE id = @id;';
			var params:Array = [ {name:"id", value:rowItem.id} ];
			return super.executeSingleResult(text,params);
		}
		
	}
}

class SingletonLock {}
